<%-- 
    Document   : usuarioController
    Created on : 01-nov-2011, 17:19:07
    Author     : Renzo
--%>
<%@page import="entidades.UsuarioSession"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@page import="params.RecursoUsuario"%>
<%@page import="controladores.UsuarioController"%>
<%@page import="controladores.RequestParam"%>
<%@page import="util.Encriptador"%>
<%@page import="params.TipoPersona"%>
<%@page import="entidades.Usuario"%>
<%@page contentType="application/json" pageEncoding="UTF-8"%>

<%
    if(request.getParameter("rec") != null){
        String recurso = request.getParameter("rec");
        UsuarioController userC = new UsuarioController();
        String jsonRpta = "";//string donde ira las respuestas en JSON
        /* LOGIN - POST */
        if(recurso.equals(RecursoUsuario.logIn)){
            try{
                if(request.getParameter("user") != null && request.getParameter("clave") != null && request.getParameter("tipo") != null ){
                    RequestParam rpUser = new RequestParam("user",request.getParameter("user"));
                    RequestParam rpClave = new RequestParam("clave", request.getParameter("clave"));
                    RequestParam rpTipo = new RequestParam("tipo", request.getParameter("tipo"));
                    List<RequestParam> listaReq = new ArrayList<RequestParam>();
                    listaReq.add(rpUser);
                    listaReq.add(rpClave);
                    listaReq.add(rpTipo);
                    jsonRpta = userC.processPOSTRequest(RecursoUsuario.logIn, listaReq);
                }else{
                jsonRpta = userC.sendMensajeError("No se especificaron los parametros");
                } 
            }catch(Exception e){
                jsonRpta = userC.sendMensajeError(e.getMessage());
            }
        }else if(recurso.equals(RecursoUsuario.logOut)){
            if(request.getParameter("user") != null){
                
            }
            
        }else if(recurso.equals(RecursoUsuario.validar)){
            try{
                if(request.getParameter("sid") != null){
                   if(UsuarioSession.obtenerInstancia().getSid().equals(request.getParameter("sid"))){
                       jsonRpta = userC.sendMensajeOK();
                   }else{
                       jsonRpta = userC.sendMensajeError();
                   }
                }
            }catch(Exception e){
                jsonRpta = userC.sendMensajeError(e.getMessage());
            }
        }else if(recurso.equals(RecursoUsuario.add)){
            
           
        }else if(recurso.equals(RecursoUsuario.delete)){
            
            
        }else if(recurso.equals(RecursoUsuario.edit)){
        
        }else{
        //No se especifico un recurso, entonces de vuelve un mensaje de error
        UsuarioController bc = new UsuarioController();
        %><%=bc.sendMensajeError("No especifico un recurso valido")%><%      //Se renderiza un JSON que devuelve el error
        }
        if(!jsonRpta.isEmpty()){
            %><%=jsonRpta%><%
        }else{
            UsuarioController bc = new UsuarioController();
            %><%=bc.sendMensajeError()%><%    
        }
    }else{
        //No se especifico recurso
        UsuarioController bc = new UsuarioController();
        %><%=bc.sendMensajeError("No especifico un recurso")%><%
    }
    %>